package com.eatrip.service.implementation;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.eatrip.bean.DatiLocale;
import com.eatrip.bean.Ricetta;
import com.eatrip.dao.RicetteDAO;
import com.eatrip.service.RicetteService;

@Service
public class RicetteServiceImple implements RicetteService {

	@Autowired
	private RicetteDAO ricetteDAO;
	
	@Override
	@Transactional(readOnly = true)
	public Ricetta getRicetta(int idRicetta) {
		return ricetteDAO.getRicetta(idRicetta);
	}
	
	@Override
	@Transactional(readOnly = true)
	public Ricetta getRandRicetta() {
		return ricetteDAO.getRandRicetta();
	}

	@Override
	@Transactional(readOnly = true)
	public List<Ricetta> getAllRicette(int start, int numRow) {
		return ricetteDAO.getAllRicette(start, numRow);
	}

	@Override
	@Transactional(readOnly = true)
	public List<Ricetta> getRicetteByIdLocale(int idLocale, int start,
			int numRow) {
		return ricetteDAO.getRicetteByIdLocale(idLocale, start, numRow);
	}
	
	

	@Override
	@Transactional(readOnly = true)
	public List<Ricetta> getRicetteByNome(String nome, int start, int numRow) {
		return ricetteDAO.getRicetteByNome(nome, start, numRow);
	}

	@Override
	@Transactional(readOnly = false)
	public void insertRicetta(Ricetta ricetta) {
		ricetteDAO.insertRicetta(ricetta);
	}

	@Override
	@Transactional(readOnly = false)
	public void updateRicetta(Ricetta ricetta) {
		ricetteDAO.updateRicetta(ricetta);
	}

	@Override
	@Transactional(readOnly = false)
	public void deleteRicetta(Ricetta ricetta) {
		ricetteDAO.deleteRicetta(ricetta);
	}

	@Override
	@Transactional(readOnly = false)
	public void deleteAllRicette() {
		ricetteDAO.deleteAllRicette();
	}

	@Override
	@Transactional(readOnly = false)
	public void deleteRicetteByIdLocale(int idLocale) {
		ricetteDAO.deleteRicetteByIdLocale(idLocale);
	}

	@Override
	public List<Ricetta> getRicetteByIdLocale(DatiLocale locale, int start,
			int numRow) {
		return ricetteDAO.getRicetteByIdLocale(locale, start, numRow);
	}

}
